Method of analyzing and modifying a footprint

ABSTRACT

In a method of analyzing and modifying a footprint depending on a specified number of texture elements touched by the footprint, in a graphics system providing the texture elements having a resolution, a dimension or a shape of the footprint is initially determined. On the basis of the specified number of texture elements and on the basis of the determined dimension or shape, the resolution of the texture elements associated with the footprint is specified. Then it is determined whether the graphics system provides texture elements having the specified resolution. If the graphics system provides texture elements having the specified resolution, the footprint is preserved. If the graphics system does not provide texture elements having the specified resolution, the texture elements which are provided by the graphics system and have a relevant resolution are selected, and those of the footprint are reduced such that the number of texture elements touched by the footprint having a reduced size is essentially equal to or smaller than the specified number.

CROSS-REFERENCE TO RELATED APPLICATION

This is a continuing application, under 35 U.S.C. § 120, of copendinginternational application No. PCT/EP2003/010016, filed Sep. 9, 2003,which designated the United States; this application also claims thepriority, under 35 U.S.C. § 119, of German patent application No. 102 42639.2, filed Sep. 13, 2002; the prior applications are herewithincorporated by reference in their entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to a method for displayingimages in a raster display controlled by a computer. In particular, thepresent invention relates to an anisotropic filter mechanism requiredfor reconstructing, or scaling, discrete, stored images or forsubjecting same to a perspective projection for the purposes ofrepresentation on raster display elements of a high quality. Theabove-mentioned discrete, stored images will be referred to as texturesbelow. In particular, the present invention relates to a method foranalyzing and modifying a footprint depending on a specified number oftexture elements touched by the footprint in a graphics system providingthe texture elements having a resolution.

2. Description of Prior Art

A “footprint” is a perspective projection of a picture element (pixel)of an object onto a curved surface. A “footprint” may be a convexquadrilateral representation reproducing the approximated result of theperspective projection onto a regular texel grid (texture-element grid)of a square picture element (pixel) of an object onto a curved surface.

In associating textures with picture elements (pixels) of an object,known graphics systems, e.g. OpenGL graphics systems, operate in such amanner that a footprint of a pixel of an object has one or more textureelements having a desired resolution associated with it, the footprintbeing approximated by a square. The disadvantage is that theapproximation here is always effected by a square which is either toolarge or too small and that the shape of the footprint is not taken intoaccount.

The resolution desired results in a texel size in a texel gridunderlying the footprint. Various mipmap level exist for predeterminedtexel sizes. If a resolution is chosen which leads to a texel size forwhich there is no mipmap with a suitable resolution (level), the texturemust be calculated at high expenditure.

SUMMARY OF THE INVENTION

Starting from this prior art, it is the object of the present inventionto provide an improved method for modifying a footprint.

The present invention provides a method of modifying a footprint independence on a specified number of texture elements touched by thefootprint, in a graphics system providing the texture elements having aresolution, including:

-   -   (a) determining a dimension or a shape of the footprint;    -   (b) specifying the resolution of the texture elements associated        with the footprint, based on the specified number of texture        elements and based on the dimension or shape determined in step        (a); and    -   (c) determining whether the graphics system provides texture        elements having the resolution specified in step (b),        -   (c.1) if the graphics system provides texture elements            having the resolution specified in step (b), maintaining the            footprint; and        -   (c.2) if the graphics system does not provide texture            elements having the resolution specified in step (b),            selecting the texture elements provided by the graphics            system and having a respective resolution, and reducing the            size of the footprint such that the number of texture            elements touched by the footprint having the reduced size is            essentially equal to or smaller than the specified number.

The present invention provides a method of modifying a footprint independence on a specified number of texture elements touched by thefootprint, in a graphics system providing the texture elements having aresolution, comprising:

-   (a) determining a dimension or a shape of the footprint;-   (b) specifying the resolution of the texture elements associated    with the footprint, based on the specified number of texture    elements and based on the dimension or shape determined in step (a);    and-   (c) determining whether the graphics system provides texture    elements having the resolution specified in step (b),    -   (c.1) if the graphics system provides texture elements having        the resolution specified in step (b), maintaining the footprint;        and    -   (c.2) if the graphics system does not provide texture elements        having the resolution specified in step (b), selecting the        texture elements provided by the graphics system and having a        respective resolution, and reducing the size of the footprint        such that the number of texture elements touched by the        footprint having the reduced size is essentially equal to or        smaller than the specified number.

Unlike the prior art, in accordance with which a filtering which mayalso be referred to as isotropic filtering is performed, the presentinvention teaches distributing a number of available texture elementshaving a specified resolution and, therefore, having a specified size,to the footprint in an optimum manner rather than the “rough”approximation of the footprint by a square completely surrounding sameor being completely contained in the footprint. Here, the footprint isoverlapped by the texture elements, an analysis and modification of thefootprint being performed in accordance with the invention, if required,to obtain the optimum distribution of the texture elements to thefootprint.

In accordance with a preferred embodiment, the inventive method is usedin a graphics system providing the texture elements having variousresolutions, texture elements having a resolution which is one down fromthe specified resolution being selected in step (c.2). Preferably, thegraphics system provides the texture elements having various resolutionsin the form of mipmaps of various levels.

In accordance with a further preferred embodiment, for the purposes ofdetermining the resolution, a rectangle surrounding the footprint isspecified in step (b), vertices of the footprint being on edges of therectangle. If it is found that for this rectangle, no texture elementshaving a relevant size, i.e. resolution, exist for achieving the desirednumber P, a clamping box, or clamping square, which is defined independence on the resolution made available by the graphics system andin dependence on the number of texture elements is specified in apreferred development of the above-described embodiment. Subsequently,the size of the footprint is reduced by shifting the vertices of thefootprint to the edges of the clamping box.

Preferably, the above-described rectangle and the clamping box arespecified based on a thickness, or expansion, parameter of thefootprint, the thickness parameter reproducing a longitudinaldeformation of the footprint.

In accordance with a further preferred embodiment, a determination as towhether an edge of the footprint exceeds a specified dimension is madein context with the determination of a dimension or a form of thefootprint, and if this is so, the size of the footprint is reduced forsuch time until the dimension of the edge is smaller than or equal tothe specified dimension.

Therefore, the inventive method provides a novel approach which may, inaccordance with an embodiment, also be controlled by a user foranalyzing and modifying a footprint.

In order to retrieve the discrete texture image, all square elements ofthe regular texel grid—the texels—overlapped by the area of thefootprint, must be read in and processed by a processing unit. Theinventive method allows both the number of texels touched by thefootprint and the lengths of the edges of the footprint to be limited.In accordance with the invention, an additional control input signal, tobe precise the performance parameter P, is provided for this purpose.This parameter P may be provided by a user. The limitation of thelengths of the edges of the footprint is determined by a furtherparameter E_(max) defining a maximum edge length. This parameter E_(max)may be hard-coded, for example.

The advantage of the present invention is that by setting the controlinput signal P, a compromise between the retrieved/reconstructed imagequality (large number of texels used), on the one hand, and theprocessing speed (small number of texels used), on the other hand, maybe achieved. A benefit of limiting the boundary edges is that thehardware expense required for further processing of the footprint insubsequent processes may be significantly reduced. Such subsequentprocesses include, for example, determining the texels overlapped by thefootprint and/or weighting these specific texels. By clamping the edgelengths, the hardware expense associated with these process steps may beclearly reduced.

In general, the data produced by the inventive method may be provided toevery texel-oriented raster process.

In accordance with a preferred embodiment of the present invention, aplurality of so-called image maps having various resolutions, whichimage maps are also referred to as mipmaps, are provided for a textureassociated with the footprint, as has already been described above. Inorder to specify the resolution, the size of the texels in a texel gridwhich are touched by the footprint is determined in dependence on thedimension or shape of the footprint and in dependence on a desired imagequality of the footprint to be represented. Depending on the texel sizethus determined it is established whether there exists, among theplurality of image maps, an image map whose associated texel sizematches the texel size established. If this is so, the respective imagemap is employed for representing the footprint. If there is no suchrespective image map, however, the size of the footprint is reduced ashas been described above, so that, depending on the image quality of thefootprint, an available image map having a resolution which is one downfrom the desired resolution and having a respective texel size isselected for representing the footprint.

Preferably, the image quality is specified by the performance parameterC essentially indicating the number of texels in a texel grid which aretouched by the footprint.

In accordance with the above-described preferred embodiment, adescription will be given of essentially two approaches and/ortechniques for restricting the number of texels used for representing afootprint (depending on the setting of the performance parameter P). Ifpre-filtered versions of a texture image having a low resolution—theso-called mipmaps—are available, a suitable mipmap level will becalculated on the basis of the thickness information. Hereby, the sizeof a square texel in the texel grid is then determined in an implicitmanner. This calculation of the level is based on the actual spatialdimensions and/or the shape of the footprint. If no pre-filtered imagemap (mipmap) having the level required is available, the area of thefootprint is reduced by shrinking the boundaries (edges) of thefootprint in a selective manner. This shrinking of the edges and/orreducing of the area is performed on the basis of the shape, theperformance parameter P and a texel size of the next available image map(mipmap) in the least favorable case, the next available image map isthe original base map itself.

In accordance with a further preferred embodiment of the presentinvention, the incoming quadrilateral footprint defined by its fourvertices is initially analyzed with regard to its area and/or its shapeand/or the spatial expansions of its edges. This analysis includes thefollowing steps:

-   -   determining a direction of rotation of the footprint which may        either be clockwise or counterclockwise;    -   calculating an anisotropic thickness parameter describing the        extent of the longitudinal deformation of the footprint;    -   determining a bounding box for the footprint;    -   creating a clamping box clamping a linearly shrunk version of        the original footprint in such a manner that a horizontal width        and a vertical height of any edge (of the shrunken footprint)        does not exceed a predefined limit. This predefined limit is        specified based on the above-described maximum length value for        the edges E_(max). In addition, the dimension of the clamping        box depends on the thickness parameter and is set such that the        number of texels overlapped by the clamping box does not exceed        a boundary specified by the performance parameter P.

Once the incoming footprint has been analyzed in the above-describedmanner, the information thus obtained and analyzed is subsequentlyassessed so as to produce output data representing a possibly modifiedfootprint along with the associated mipmap level and an associatedmagnification level. This mainly involves the conversion of the originalcoordinates of all vertices of the original footprint to the coordinatesystem specified by the mipmap level calculated. A projection of thevertices of the footprint onto the clamping box will effect additionalshrinking of the footprint, if necessary.

Thus, an advantage of the present invention is that incoming footprintcoordinates are modified such that

-   -   an edge width or edge height preferably does not exceed a        hard-coded maximum length E_(max),    -   the number of texels overlapped by the footprint equals or is        smaller than the number to which the number of these texels has        been predefined by a user,    -   the shape of the footprint is preserved if a scaling-down is        selected by a mipmap level greater than 0, and    -   spatial and temporal discontinuities of the image retrieved are        avoided.

In accordance with a preferred embodiment of the present invention, theinventive method is implemented in hardware in the shape of a hardwarepipeline, which enables accelerated processing of a plurality offootprints.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present invention will be explained belowin more detail with reference to the accompanying figures, wherein:

FIGS. 1A and B show a flow chart depicting an overview of the method inaccordance with a preferred embodiment of the present invention;

FIG. 2 is a representation of the vertices and edge vectors of anexemplary footprint in a texture space;

FIG. 3 is a representation of the footprint and of the thicknessparameter associated with the footprint;

FIG. 4 depicts the course of the clamp size depending on a thickness ofthe footprint; and

FIG. 5 shows an example of the scaling-down of the footprint.

DESCRIPTION OF PREFERRED EMBODIMENTS

With reference to FIG. 1, an overview of the inventive method inaccordance with a preferred embodiment will be described below, theindividual process steps shown in FIG. 1 being explained in more detailbelow with reference to the remaining figures.

The inventive method starts at block 100, where the data describing thefootprint is received. In the following description, use is always madeof the term “footprint”, which is a convex quadrilateral structure andwhich represents the approximated result of a perspective projection ofa square picture element onto a curved surface.

In the flow chart represented in FIG. 1, the rectangles represent themain process steps which will be explained in more detail below. Theresults of the process steps are stored in data structures shownschematically in the parallelograms in FIG. 1. These are used as inputsignals for the next process stages. The individual process steps willbe described in detail below, a mathematical vector notation(represented in bold print) having been chosen for the sake ofsimplifying the description.

Once the data describing the footprint has been received in block 100,the vectors v_(i) describing the vertices of the footprint are availablein block 102, with i=0, 1, 2, 3 (the description of the preferredembodiment is based on the assumption of a quadrilateral footprint).

In the subsequent block 104, the footprint information provided in block102 are used for performing a footprint analysis. On the one hand, thisfootprint analysis leads to establishing a direction of rotation, d, ofthe footprint, which is provided in block 106 and is provided at anoutput in block 108. In addition, the footprint analysis in block 104yields the thickness parameter t provided in block 110. Based on thethickness parameter t provided in block 110, and based on an externalperformance parameter P provided in block 112, a clamp size c₀ iscalculated, which is provided in block 116. The performance parameter Pspecifies the number of texels touched and/or overlapped by thefootprint.

The mipmap level required is calculated in block 120. On the one hand,the calculation in block 120 receives, as external parameters, anindication of the maximum mipmap level M_(max) from block 122. Inaddition and on the basis of the footprint data provided in block 102, abounding box is calculated in block 124, the dimensions b_(min), b_(max)of which are provided in block 126 and are provided in block 120 forcalculating the mipmap level. The mipmap level m calculated in block 120is then provided in block 128 and is output in block 130.

On the basis of the clamp size c₀ provided in block 116 and of themipmap level m provided in block 128, a mipmap correction is performedin block 132 (see item A and FIG. 1 B). The mipmap correction leads to amodified clamp size c_(m) provided in block 134. The modified clamp sizec_(m) is provided to block 136, wherein the footprint is scaled downsuch that it fits into the clamping rectangle defined by the clamp sizec_(m). The calculation performed in block S136 results, on the one hand,in modified footprint data v′_(i) and scaling factors f_(x), f_(y) to beprovided in blocks 138 and 140. As may also be seen in FIG. 1 b, theprocessing stage 136 receives, in addition to the modified clamp sizec_(m), the footprint data provided in block 102 (see item B) as well asthe data concerning the bounding box b_(min), b_(max) calculated inblock 124 (see item C).

The modified footprint data v′_(i) provided in block 138 and the mipmaplevel m are provided to block 142 wherein, on the basis of the datareceived and of information received by block 132, a transformation to aselected mipmap level is performed, so that the transformed/convertedfootprint data v*_(i) are provided in block 144, which data will beoutput in block 146.

In addition, the thickness is reduced in block 148 on the basis of thescaling factors f_(x), f_(y) provided in block 140, block 148 receivingthe thickness parameter provided in block 110 (see item D) in additionto the input from block 140. In addition, block 148 receives, from block150, a suitable algorithm for reducing the thickness t. The modifiedthickness parameter t′ is then output in block 152. On the basis of anmagnification parameter provided in block 154 and of the modifiedthickness parameter t′ provided in block 152, the enlargement shift, ormagnification shift, is calculated in block 156, so that anmagnification level r′ is provided in block 158. On the basis of analgorithm provided in block 160 and on the basis of the enlargement stepprovided by block 158, and on the basis of the mipmap level m, atransformation to the mipmap level selected is performed in block 162,so that a modified enlargement step r* is yielded in section 164, whichis also output in block 146.

The individual blocks of FIG. 1 will be explained in more detail below.

FIG. 2 shows an example of a convex footprint 200 arranged in a texturespace spanned by the x axis and the y axis. This texture space also hasarranged therein the texel grid comprising a plurality of square texelelements, some of which are overlapped by the footprint. FIG. 2 showsthe vertex vectors v₀ to v₃ as well as the edge vectors s₀ to s₃. Thevertex vectors v₀ to v₃ are provided as input data for the inventivemethod.

An important parameter used for specifying an appropriate detail levelfor representing the footprint is the so-called “thickness” t of thefootprint. In FIG. 3 this thickness parameter is represented in moredetail, for a quadrilateral footprint. In FIG. 3, the four vertexvectors v₀ to v₃ are shown as well as the two height vectors h₀ and h₁which join the opposite vertices v₀ and v₂, and v₁ and v₃, respectively.In addition, FIG. 3 depicts two thickness parameters t₀ and t₁, thefinal thickness parameter t being determined by the minimal one of thetwo thickness parameters t₀ and t₁ shown.

As can be seen, the thickness parameter t₀ defines the distance betweentwo straight lines which extend through the vertices v₁ and v₃ and are,in addition, parallel to the height vector h₀. Also, the thicknessvector t₁ indicates a distance between two straight lines which extendthrough the vertices v₀ and v₂ and are parallel to the height vector h₁.

On the basis of the parameters represented in FIG. 3, the calculation ofthe thickness parameter t is performed in accordance with the belowcalculation specification.

${{\overset{\rightharpoonup}{h}}_{j} = {{{\overset{\rightharpoonup}{v}}_{j + 2} - {{\overset{\rightharpoonup}{v}}_{j}\mspace{14mu} j}} = 0}},1$$h_{j} = {{{\overset{\rightharpoonup}{h}}_{j}} = \sqrt{h_{j,x}^{2} + h_{j,y}^{2}}}$$\overset{\rightharpoonup}{h} = {{\overset{\rightharpoonup}{h}}_{0} \times {\overset{\rightharpoonup}{h}}_{1}}$h_(z) = h_(0, x) ⋅ h_(1, y) − h_(0, y) ⋅ h_(1, x)$F = {{{{\overset{\rightharpoonup}{h}}_{0} \times {\overset{\rightharpoonup}{h}}_{1}}} = {{h_{z}} = {t_{j} \cdot h_{j}}}}$$t_{j} = \left\{ {{\begin{matrix}{0\mspace{14mu}} & {{{if}\mspace{14mu} h_{j}} = 0} \\{{F/h_{j}}\mspace{14mu}} & {else}\end{matrix}t} = {{\min\left( {t_{0},t_{1}} \right)} = \left\{ \begin{matrix}{0\mspace{14mu}} & {{{if}\mspace{14mu} h_{0}} = {h_{1} = 0}} \\{{F/{\max\left( {h_{0},h_{1}} \right)}}\mspace{14mu}} & {else}\end{matrix} \right.}} \right.$

In accordance with a preferred embodiment of the present invention, adirection of rotation, d, of the vertex indices may optionally also becalculated, which direction of rotation my be used in a subsequentcalculation of specific edge attributes. In addition, the surface area Aof the footprint may be calculated. The direction of rotation d and thearea A are calculated in accordance with the below calculationspecification:d=sign(h _(z))A=F/2wherein:

F=area of the parallelogram spanned by h₀ and h₁.

The direction d has a value of +1 for a clockwise rotation, and a valueof −1 for a counterclockwise rotation. In the event that h₀=0 OR h₁=0,the footprint degenerates to a point or line, and in this case thedirection of rotation, d, is 0.

After the determination of the thickness parameter t, and after theoptional determination of the direction of rotation, d, and of the areaA, a clamp size c is then calculated. The clamp size c is a linearfunction across the course of the thickness parameter t, the coursebeing located between the settable performance parameter P and themaximum length, defined by parameter E_(max), for a resulting edge. Theclamp size c has a value P if t=P, a maximum area A* of the resultingfootprint being set for this setting, wherein: A*≅P². On the basis ofthe setting of parameter c, a determination of an initial clamp size c₀is performed in accordance with the below calculation specification.

O < P < c < E_(max)$c = {{\left( {1 - \frac{E_{\max\;}}{P}} \right) \cdot t} + E_{\max}}$c₀ = max (P, c)

The course of the clamp size c versus the thickness parameter t isplotted in FIG. 4, and as can be seen, the value of the clamp parameteris c=E_(max) for t=0 and decreases, starting from this value, in alinear fashion down to the value P, which is reached at t=P. As of thisvalue, the value of the clamp parameter c remains constant at value P.FIG. 4 shows, in the bottommost curve, the initial bounding value and/orthe initial clamp size c₀ and/or its course versus the thicknessparameter t. In FIG. 4, the bottommost curve describes the initiallycalculated size of the clamp box c₀ for mipmap level 0. This representsa measure of the resolution to be used. The curve qualitativelydescribes the following behavior: with a smaller t, i.e. a narrowerfootprint which has thus a smaller area, the clamp size and thus thepreferred resolution of the texture increases, and the texel size ofsame decreases in proportion to the size of the footprint. The clampingin the upward direction effected by E_(max) guarantees the maximumadmissible edge length, the clamping in the downward direction effectedby P limits the process duration. The larger the value of P, the later ajump is performed to a lower resolution, at an increase in the area ofthe footprint. The upper curve c_(m) corresponds to the coordinatetransform c₀ for a mipmap level m. The latter is required if m does notequal m_(req), and downscaling is thus required.

The calculation of the necessary mipmap level m_(req) and of therequired downscaling of the size of the footprint will be explained inmore detail below with reference to FIG. 5.

Initially it shall be assumed that for the footprint which is to berepresented, a mipmap level exists in the footprint's original dimensionand shape, which mipmap level avoids downscaling of the footprint. Bymeans of this minimum mipmap level it is ensured that no side of abounding box for the footprint is larger than the clamp size c₀determined in the above-described manner. In addition to footprint 200,FIG. 5 also shows, in an exemplary manner, a bounding box 202, and thebounding box 202 as well as the required mipmap level m_(req) isproduced in accordance with the below calculation specifications:

${\overset{\rightharpoonup}{b}}_{\min} = \begin{pmatrix}{\min\left( {v_{0,x},v_{1,x},v_{2,x},v_{3,x}} \right)} \\{\min\left( {v_{0,y},v_{1,y},v_{2,y},v_{3,y}} \right)}\end{pmatrix}$ ${\overset{\rightharpoonup}{b}}_{\max} = \begin{pmatrix}{\max\left( {v_{0,x},v_{1,x},v_{2,x},v_{3,x}} \right)} \\{\max\left( {v_{0,y},v_{1,y},v_{2,y},v_{3,y}} \right)}\end{pmatrix}$$\overset{\rightharpoonup}{b} = {{\overset{\rightharpoonup}{b}}_{\max} - b_{\min}}$$m_{reg} = {\max\left( {0,{{ceil}\left( {\log_{2}\left( \frac{\max\left( {b_{x},b_{y}} \right)}{c_{0}} \right)} \right)}} \right)}$wherein the function of “ceil” signifies that the term in brackets isincreased to the next integer value in the direction +∞. FIG. 5represents the parameters b_(min) and b reproduced in the abovecalculation specification, and the parameter b_(max), which is alsoreproduced in the calculation specification, is the vector which extentsfrom the origin of the coordinate system to the peak of vector b, butwhich is not represented for the sake of clarity.

In order to obtain the mipmap level m to be applied, the mipmap levelrequired is clamped to the highest available level value M_(max) inaccordance with the following calculation specification:m=min(M _(max) ,m _(req))

If it is found, however, that the desired mipmap level m is smaller thanthat mipmap level specified by the bounding box, i.e. is smaller thanm_(req), it is necessary to reduce the size of the footprint such thatsame fits into a clamping box. The clamping box is calculated on thebasis of a mipmap-corrected clamp size c_(m), which is determined inaccordance with the below calculation specification:c _(m)=max(P·2^(m) ,c+(2^(m)−1)·E _(max))

The course of the parameter of the corrected clamp size c_(m) is alsoplotted in FIG. 4.

FIG. 5 shows the clamping box 204 created on the basis of the correctedclamp size c_(m). The reduction of the size of the footprint 200 to thedownscaled footprint 206 is effected such that the vertices v₀ to v₃ ofthe original footprint are converted to the vertices v₀′ to v₃′ in sucha manner that the converted vertices are arranged on the edges of theclamping box 104. The conversion of the original vertices to themodified vertices is effected in accordance with the below calculationspecification:

$f_{x,y} = {\min\left( {1,\frac{b_{x,y}}{c_{m}}} \right)}$${\overset{\rightharpoonup}{v}}_{i} = {{\begin{pmatrix}f_{x} & 0 \\0 & f_{y}\end{pmatrix} \cdot \left( {{\overset{\rightharpoonup}{v}}_{i} - {\overset{\rightharpoonup}{b}}_{\min}} \right)} + {\overset{\rightharpoonup}{b}}_{\min} + {\frac{1}{2}\left( {\overset{\rightharpoonup}{b} - \begin{pmatrix}c_{m} \\c_{m}\end{pmatrix}} \right)}}$wherein:

-   f_(x), f_(y)=scaling factors for the x and y directions.

In a final block, the coordinates of the reduced footprint v′_(i) mustbe transferred to the mipmap level m, which is performed in accordancewith the below calculation specification:v* _(i)=2^(−m) · v′ _(i)

In addition, the inventive method may make provisions for providing anmagnification level in dependence on the thickness parameter t which maybe used later on for enlarging footprints with a sub-texel size so as toavoid temporal and spatial artifacts in the representation of afootprint which includes a plurality of footprints.

Once the thickness parameter t has also been changed due to thereduction of the size of the footprint, the former must also be set.Since the thickness parameter t is an anisotropic property, same may becalculated by creating a new thickness parameter for the downscaledvertex vectors on the basis of the above calculation specification,which involves a large amount of calculation expenditure, however. Inaccordance with a preferred embodiment, the thickness parameter t isdetermined approximately, however, at much less expense by using theoriented scaling factors f_(x) and f_(y) (method t), so that thefollowing methods are available for determining the set thicknessparameter t′:

${(1)\mspace{14mu} t^{\prime}} = {t\left( {\overset{\rightharpoonup}{v}}_{i}^{\prime} \right)}$${(2)\mspace{14mu} t^{\prime}} = {t \cdot \frac{f_{x} + f_{y}}{2}}$(3)  t^(′) = t ⋅ min (f_(x), f_(y))

The method described with (2) is preferred, as has been explained above.

The magnification level r is controlled by a settable magnificationparameter T describing a minimum thickness without magnification. Themagnification level is created in accordance with the followingcalculation specification:

$r^{\prime} = {\max\left( {0,\frac{T - t^{\prime}}{2}} \right)}$

The higher the value of T, the more blurring is introduced into theimage to be represented, but, at the same time, fewer artifacts arenoticed. A value of √2 for T has proven to be advantageous. If T=0 ischosen, any magnification is deactivated.

Similar to the above determination of the altered thickness parameter t′there are three possible ways (method r) for converting the delay levelr′ to the selected mipmap level m; specifically:

${\left. {{{\left. {{{\left. 1 \right)\mspace{14mu} r^{*}} = {r^{\prime} \cdot 2^{- m}}}2} \right)\mspace{14mu} r^{*}} = r^{\prime}}3} \right)\mspace{14mu} r^{*}} = {r^{\prime} + {\left( {\frac{1}{2} - 2^{- {({m + 1})}}} \right) \cdot t^{\prime}}}$

The method referred to as 1) maintains the effective filter size for allmipmap levels. The compensation of elements having a size smaller than atexel, however, applies only to mipmap level 0 and becomes less and lesseffective, the higher the mipmap level becomes. Method 3) ensures theconsistency of T with all levels. The effective filter size, however,undergoes discrete enlargement between two levels and, in addition, thecalculation is more expensive. The preferred method 2), eventually, is acompromise between 1) and 3) and is thus the method which is easiest toimplement, of course.

With the parameters described in the above manner, a color of thefootprint may be calculated in subsequent process steps. To this end,the determined parameters of a further process stage of the graphicsunit are provided, which graphics unit then creates a color of thefootprint in a conventional manner.

Even though the present invention has been described on the basis of afootprint having four sides in the above description of the preferredembodiments, the inventive approach may in principle be extended to anyfootprints.

While this invention has been described in terms of several preferredembodiments, there are alterations, permutations, and equivalents whichfall within the scope of this invention. It should also be noted thatthere are many alternative ways of implementing the methods andcompositions of the present invention. It is therefore intended that thefollowing appended claims be interpreted as including all suchalterations, permutations, and equivalents as fall within the truespirit and scope of the present invention.

1. A method of modifying a footprint in dependence on a specified number of texture elements touched by the footprint, in a graphics system providing the texture elements having a resolution, comprising: (a) determining a dimension or a shape of the footprint; (b) specifying the resolution of the texture elements associated with the footprint, based on the specified number of texture elements and based on the dimension or shape determined in step (a); and (c) determining whether the graphics system provides texture elements having the resolution specified in step (b), (c.1) if the graphics system provides texture elements having the resolution specified in step (b), maintaining the footprint; and (c.2) if the graphics system does not provide texture elements having the resolution specified in step (b), selecting the texture elements provided by the graphics system and having a respective resolution, and reducing the size of the footprint such that the number of texture elements touched by the footprint having the reduced size is essentially equal to or smaller than the specified number.
 2. The method as claimed in claim 1, wherein the graphics system provides the texture elements having a plurality of resolutions, texture elements having a resolution which is one down from the specified resolution being selected in step (c.2).
 3. The method as claimed in claim 1, wherein step (a) comprises: (a.1) determining whether an edge of the footprint exceeds a specified dimension; and (a.2) reducing the size of the footprint until the dimension of the edge is smaller than or equal to the specified dimension, if the dimension of the edge exceeds the specified dimension.
 4. The method as claimed in claim 1, wherein the graphics system provides the texture elements having different resolutions in the form of mipmaps of various levels.
 5. The method as claimed in claim 1, wherein step (b) includes specifying a rectangle surrounding the footprint, vertices of the footprint being arranged on edges of the rectangle.
 6. The method as claimed in claim 5, wherein the rectangle and the bounding box are specified based on a thickness parameter of the footprint.
 7. The method as claimed in claim 1, wherein step (c.2) comprises: specifying a bounding box in dependence on the resolution of the texture element provided by the graphics system, and reducing the size of the footprint by shifting the vertices of the footprint onto edges of the bounding box. 